//
//  MYUserAccount.swift
//  MYWeibo
//
//  Created by Magic Yu on 16/4/14.
//  Copyright © 2016年 Magic Yu. All rights reserved.
//

import UIKit

//给需要保存的用户信息添加属性  其他的不需要保存的用户信息过滤掉
class MYUserAccount: NSObject {
 
    //用户授权的唯一票据
    var access_token: String?
    
    //reason: '-[__NSCFNumber length]: unrecognized selector sent to instance 0xb0000000966017f3'
    //expires_in  文档上是String类型 其实是Int类型
    
    //access_token的生命周期 单位是秒数 accesstoken在多少秒之后过期
    var expires_in: NSTimeInterval = 0 {
        didSet {
            
        //计算型属性 立即计算出过期时间
        expires_date = NSDate(timeIntervalSinceNow: expires_in)
            
        }
    }
    
    //为了方便计算过期时间 可以将expires_in + 当前日期 计算出具体的过期时间
    //用具体的过期时间与当前时间比较 如果当前时间小于过期时间 则没过期 否则是过期了
    
    //记录具体的过期时间
    var expires_date: NSDate?
    
    //标识唯一用户的id
    var uid: String?
    
    //用户显示名称
    var name: String?
    
    //用户头像 180 * 180
    var avatar_large: String?
    
    
    init(dict: [String: AnyObject]) {
        super.init()
        setValuesForKeysWithDictionary(dict)
    }
    
    //过滤
    override func setValue(value: AnyObject?, forUndefinedKey key: String) {  }
    
    //MARK:将字典转换为字符串
    override var description: String {
        let keys = ["access_token","expires_in","uid","name","avatar_large","expires_date"]
        let dict = self.dictionaryWithValuesForKeys(keys)
        return dict.description
    }
    
}













